谁能成为物联网时代的「操作系统」?
文 | 慕睿涛 陈绍元
图片来源 | 拍信图库
PC 时代造就了 Windows 操作系统,移动互联网时代造就了 Android 和 iOS 操作系统,如今物联网时代正迅速崛起,又将造就什么操作系统呢?
操作系统作为一个产业的底层基础设施,除了潜在的巨大商业价值,在当下时代背景中,更是具备了国家层面的战略意义,拥有自主产权的优秀操作系统,才能避免受制于人。
因而,我们非常关注物联网时代的操作系统进展和格局,将在本文简单探讨以下问题:
为什么需要物联网操作系统?
物联网需要怎样的操作系统?
发展至今,物联网操作系统的核心流派和优劣势?
物联网操作系统是否有创业公司机会?未来的商业价值如何体现?
本文由 36氪联合卓晟互联 CTO 慕睿涛共同完成,卓晟互联是国内一家物联网操作系统研发商,36氪曾做过详细报道。慕睿涛是原 SUN 中国的第一位JavaME虚拟机开发工程师,原甲骨文 Java 与嵌入式系统事业部资深顾问。
以下是正文:
为什么需要物联网操作系统?
在 2012 年左右物联网的概念刚刚兴起时,整个产业聚焦在 2 个问题上:网络连接,前端算力。换句话说,就是“先把设备连上网再说”。至于物联网终端设备需要跑什么样的软件,如何开发前端软件,前后端软件如何协同开发,甚至软件平台的安全性这样的问题,全都“以后再说”。
随着通讯芯片成本的降低、NB-IoT 和 4G 甚至 5G 无线通讯网络技术的发展,物联网已经解决了设备连接互联网的问题。而随着 ARM32 位 MCU 的普及,前端设备的计算能力有了很大提升,具备了运行更复杂应用的能力。
旧的问题解决了,新的问题也相继出现。
网络数据量激增,网络响应延迟,难以与迭代快、协议复杂的互联网服务打通 ··· 于是边缘计算越发重要,将计算分布到前端的网关和数据采集终端,和互联网服务结合,是物联网当前发展阶段的大势所趋。
边缘计算使得物联网终端软件复杂度大幅提升,而这个需求在几年前还都是不存在的。过去物联网产品的软件功能在出厂时就基本固定了,上层软件应用开发和底层硬件紧密耦合,很难由第三方开发者为硬件开发应用。这导致物联网软件应用迭代慢、成本高,生态闭塞。
参考 PC、互联网以及移动互联网的技术发展历程,软件行业的爆发需要相对较为标准化的底层运行环境作为支撑。于 PC 就是 Windows、Linux、macOS,于互联网就是浏览器,于移动互联网就是 iOS 和 Android。
所以,物联网也需要具备一套对软件开发者更友好的、相对统一的操作系统,使软件开发过程从硬件开发中脱离出来。只需要基于操作系统,即可快速开发上层应用。
物联网需要怎样的操作系统?
首先,既然 Android 在智能手机上这么成功,那是否可以直接复制到物联网领域呢?答案是否定的,原因包括 Android 是专为手机设计的操作系统,运行所需计算资源过大、难以兼容物联网设备广泛外设、存在安全问题等。
那么物联网需要什么样的操作系统底层运行环境呢?大致有这样几个方面的需求:
跨平台:消弭硬件平台差异,使软硬件开发解耦合。
低成本:能在微小设备运行,资源耗用小,降低硬件成本。
易学习:相关技术有大量的存量开发者用户,不需要重新学习。
强安全:拥有足够强的安全机制,保障用户设备和数据的安全。
前两个是硬件厂商的需求,后两个是软件行业的需求。
物联网操作系统的任务,其实就是为边缘计算软件提供满足这些需求的底层运行环境。
发展至今,物联网操作系统的核心流派和优劣势?
目前,市面上的物联网操作系统基本形成了三大核心流派。
1、由传统的嵌入式 RTOS 发展而来。典型代表:FreeRTOS、RT-Thread、LiteOS、uCOS、MICO。
优点:在物联网终端上已经广泛支持,硬件推广成本低。
缺点:软件开发专业度极高,软硬件开发难以隔离,对专业软件公司进入这个领域造成困难。
这条路上有着众多玩家,尤其是在硬件行业里,RTOS 仍旧是终端操作系统的主要选择。由于历史原因,传统 RTOS 市场里大多是国外厂家,或是 FreeRTOS 这样的国外技术人员活跃的开源社区产品。
国内这几年做得最好的是 RT-Thread,目前发展势头非常快。其官网信息显示,RT-Thread 已应用于能源、车载、医疗、消费电子等多个行业,累积装机量超过 2 亿台。
2、由其他领域的软件平台移植而来,如Linux、Java、Node.js Embedded、MicroPython。典型代表:Linaro,MicroEJ,卓晟互联,Ruff。
优点:软件资源丰富,开发者众多,软件开发快成本低。
缺点:适配物联网终端硬件有难度,需要解决资源占用、外设接口扩展、节电设计的多方面问题。
考虑到 Java 在传统服务器行业的超高市场占有率,以及 Java 开发者的庞大社区规模,基于 Java 的物联网操作系统方案,从传统行业和传统IT领域切入物联网方向的公司,如果能够在物联网设备上开发 Java 应用,将会极大释放自身软件业务能力,降低B端客户采纳物联网方案的门槛。
人工智能领域里,Python 在开发者资源方面有着绝对的领先地位。所以人工智能领域的物联网设备,支持 Python 是很自然的选择。不过目前还没有出现提供比较成熟的、基于 Python 的物联网操作系统产品的公司或社区项目。
互联网公司转到物联网领域的时候,JavaScript 是一条天然的技术路线选择。这条路线上,国内主要是 Ruff。
3、由互联网公司的云平台延伸而来。典型代表:AliOS Things、Android Things。
优点:天生与互联网服务相结合,方便对接互联网应用。
缺点:基本上是各家产品对各家服务,难以做到平台中立,对软件开发者来说功能性受到了限制。
目前来看,Android Things 还是太大了,比嵌入式 Linux 更耗资源,且不再走 Android 的开源路线,基本成为了 Google 自家服务的 SDK。对于国内厂商来说,跟随门槛比 Android 更高一些。
物联网操作系统是否有创业公司机会?未来的商业价值如何体现?
过去,操作系统这样的基础软件肯定要选择大公司的技术方案,因为技术发展、后续维护等工作比开发本身更重要,只有大公司才能拥有客户的巨大信任。
但是随着开源模式被广泛接受,基于开源开发模式、标准开放的技术反而更能赢得客户的青睐,因为这样的模式摆脱了客户对大公司的潜在依赖,任何公司都可以提供持续的技术支持。
这样一来,操作系统这种以前看起来好像一定是要大公司来干的事,小公司、创业公司也可以来做,只要技术过硬。比如 Linux,这项完全由社区(甚至不是一家公司)发展起来的操作技术,虽然 IBM 也在玩,但是也有 Redhat 这样的公司从无到有一路发展壮大起来。
大家都知道操作系统有多重要,多垄断,但是如何体现到商业价值呢?
在各自领域的大玩家,基本都把物联网操作系统看做拓展自身业务,或是保住自身在行业中的地位的工具。比如华为的 LiteOS,三星的 Node.js,无法摆脱为自家硬件服务的属性;AliOS Things 或是 Android Things,无法摆脱对自家服务的依赖。
但是这样其实限制住了操作系统本身的商业价值,操作系统作为软件基础平台,其中立性才是自身价值的最大体现。
在操作系统的商业模式更加开放,且以开源为主流技术开发模式的今天,传统的软件商业价值变现方式,即授权、卖 copy 这样的模式,已经不适用了。相比之下,先快速做大生态,然后从软件、云服务、广告等市场变现,或许是更良性的模式。
展望未来,在行业特点区隔下,物联网操作系统将依然是几种技术路线并行,而在每条路线上的漫长竞赛,还都刚刚开始。
如您对“36氪Pro”上报道的项目感兴趣,欢迎添加创投小助手交流合作(ID:chuangtou36kr)。
推荐阅读
更多精彩
Pro趋势 :菜市场 | 产业互联网丨商业航天丨分账剧 | 冥想丨电子烟“中局”丨朋友圈营销
Pro独家 :毒丨笑果文化丨数字虚拟人丨罗永浩小野电子烟丨刷宝丨游戏手机丨TPG 收购 APM Monaco丨连咖啡丨Y C 中国丨沙特瞄准中国丨寻找超级项目
Pro案例 :To B生意丨长租公寓“杀死”腰部公司丨车库场景将诞生新一代分众传媒?丨探月学院 | 小白心里软 | Allbirds | 气味图书馆 | 乔治巴顿丨Keep专访丨深度分析 Lyft 和 Uber 招股书丨茶里小怪兽丨开山丨蓝领市场丨NEIWAI内外丨雅萌YA-MAN丨周期天王打造长青组织